define(['jquery', 'bootstrap', 'frontend', 'template', 'form','echarts', 'bootstrap-datetimepicker','backend/csmonline/chart/_chartonlinehour','backend/csmonline/chart/_chartonlinemobilepc'],
function ($, undefined, Frontend, Template, Form,echarts,datetimepicker,chartonlinehour,chartonlinemobilepc) {
	Date.prototype.format = function (fmt) {
	    var o = {
	        "M+": this.getMonth() + 1, //月份
	        "d+": this.getDate(), //日
	        "h+": this.getHours(), //小时
	        "m+": this.getMinutes(), //分
	        "s+": this.getSeconds(), //秒
	        "q+": Math.floor((this.getMonth() + 3) / 3), //季度
	        "S": this.getMilliseconds() //毫秒
	    };
	    if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
	    for (var k in o)
	        if (new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
	    return fmt;
	}
//	var chart1 = {
//		chartid:"chart1",
//    	myChart:null,
//    	dataset:null,
//        init:function(control){
//            var that = this;
//            that.myChart = echarts.init(document.getElementById(that.chartid));
//            control._dateselect();
//            that._getDataAndDraw();
//            $("#"+that.chartid+"select").change(function(){
//            	that._drawchart(that.dataset[$(this).val()]);
//            });
//        },
//        _getDataAndDraw:function(){
//        	var that = this;
//			Fast.api.ajax({
//			    url: "csmonline/chartonline/"+that.chartid,
//			    type: "get",
//			    data:{
//			    	begin:$("#datetimepicker1_input").val(),
//			    	end:$("#datetimepicker2_input").val()
//			    },
//			}, function (data, ret) {
//				that.dataset = data;
//				that._drawchart(that.dataset[$("#"+that.chartid+"select").val()]);
//			    return false;
//			}, function (data, ret) {
//			    return false;
//			});
//
//        },
//        _drawchart:function(dataset){
//        	var that = this;
//			var option = {
//			    legend: {
//			        data: ['游客统计', '登录用户统计']
//			    },			    	    			
//			    dataset: {
//			        // 提供一份数据。
//			        // source: [
//			        //     ['product', '游客统计', '登录用户统计'],
//			        //     ['2020-03-12', 43.3, 85.8],
//			        //     ['2020-03-13', 83.1, 73.4],
//			        //     ['2020-03-14', 86.4, 65.2],
//			        //     ['2020-03-15', 72.4, 53.9]
//			        // ]
//			        source:dataset
//			    },				
//			    xAxis: {
//			        type: 'category',
//			    },
//			    yAxis: {
//			        type: 'value'
//			    },
//			    series: [
//			    	{
//				        type: 'line',
//				        smooth: true
//			    	},
//			    	{
//				        type: 'line',
//				        smooth: true
//			    	}			    	
//			    ]
//			};
//            that.myChart.setOption(option);           
//        },   		
//	};
//
//
//	var chart2 = {
//		chartid:"chart2",
//    	myChart:null,
//    	dataset:null,
//        init:function(control){
//            var that = this;
//            that.myChart = echarts.init(document.getElementById(that.chartid));
//            control._dateselect();
//            that._getDataAndDraw();
//            $("#"+that.chartid+"select").change(function(){
//            	that._drawchart(that.dataset[$(this).val()]);
//            });
//        },
//        _getDataAndDraw:function(){
//        	var that = this;
//			Fast.api.ajax({
//			    url: "csmonline/chartonline/"+that.chartid,
//			    type: "get",
//			    data:{
//			    	begin:$("#datetimepicker1_input").val(),
//			    	end:$("#datetimepicker2_input").val()
//			    },
//			}, function (data, ret) {
//				that.dataset = data;
//				console.log(data);
//				console.log($("#"+that.chartid+"select").val());
//				that._drawchart(that.dataset[$("#"+that.chartid+"select").val()]);
//			    return false;
//			}, function (data, ret) {
//			    return false;
//			});
//
//        },
//        _drawchart:function(dataset){
//        	var that = this;
//        	console.log(dataset);
//			// var data = [{
//			//     name: 'Apples',
//			//     value: 70
//			// }, {
//			//     name: 'Strawberries',
//			//     value: 68
//			// }];
//			var option = {
//			    tooltip: {
//			        trigger: 'item',
//			        formatter: '{a} <br/>{b} : {c} ({d}%)'
//			    },				
//			    series: [{
//			        type: 'pie',
//			        data: dataset,
//			    }]
//			};
//
//            that.myChart.setOption(option);           
//        },   		
//	};

 

    var Controller = {
 
        index:function(){
      
            var that = this;
            //chart1.init(that);
            that._dateselect();
            chartonlinehour.init(that,'chart1');
            //chart2.init(that);
            chartonlinemobilepc.init(that,'chart2');
 
            var iframeurl = Fast.api.fixurl('csmonline/chartchinaonline/index?begin='+$("#datetimepicker1_input").val()+'&end='+$("#datetimepicker2_input").val());
            $("<iframe src="+iframeurl+" width='100%' height='1100px' id='iframechina' name='iframechina' style='position:absolute;z-index:4;'  frameborder='no' marginheight='0' marginwidth='0' allowTransparency='true'></iframe>").prependTo('#chart3');
            $("#dateconfirm").click(function(){
            	chart1._getDataAndDraw();
            	chart2._getDataAndDraw();
                $("#iframechina").attr('src',Fast.api.fixurl('csmonline/chartchinaonline/index?begin='+$("#datetimepicker1_input").val()+'&end='+$("#datetimepicker2_input").val()));
            })            
        },   
        _dateselect:function(){
        	var that = this;
			var day1 = new Date();
			var s1 = day1.format("yyyy-MM-dd");
			var day2 = new Date();
			day2.setDate(day1.getDate());
			var s2 = day2.format("yyyy-MM-dd");
            that._core_bui_datetimepicker('#datetimepicker1',s2,function(val){
            });
            that._core_bui_datetimepicker('#datetimepicker2',s1,function(){
            });   
            
        },
        _core_bui_datetimepicker:function(jquerydomkey,date,onchangeFunc){
		    $(jquerydomkey).datetimepicker({
		        showClose:true,
		        format:'YYYY-MM-DD',
		    }).on('dp.change',function (ev) {
		        var v = $(jquerydomkey).val();
		        onchangeFunc(v);
		    });
		    $(jquerydomkey+"_input").val(date);
		}        
    };
 
    return Controller;
});